namespace CSharppro._1030;

public class UserServiceImpl : IUserService
{
    // 内存集合模拟数据库
    private List<User> _userList = new List<User>();

    public bool AddUser(User user)
    {
        if (user == null) return false;
        // 简单判重（实际可按业务规则扩展）
        if (_userList.Exists(u => u.Id == user.Id)) return false;
        _userList.Add(user);
        return true;
    }

    public bool DeleteUser(int userId)
    {
        var user = _userList.Find(u => u.Id == userId);
        if (user == null) return false;
        _userList.Remove(user);
        return true;
    }

    public bool UpdateUser(User user)
    {
        if (user == null) return false;
        var existingUser = _userList.Find(u => u.Id == user.Id);
        if (existingUser == null) return false;
        // 替换属性（或按需更新部分属性）
        existingUser.Name = user.Name;
        existingUser.Age = user.Age;
        return true;
    }

    public User GetUserById(int userId)
    {
        return _userList.Find(u => u.Id == userId);
    }

    public List<User> GetAllUsers()
    {
        return _userList;
    }
}
